package marseillaisdu90.modele;

/**
 * Classe qui représente une sortie d'une pièce.
 * Elle sera ajoutée dans une pièce.
 * @author yoann
 *
 */

public class Sortie {

	//Attributs
	private int numSortie;
	private int posX;
	private int posY;
	private int nextPiece;
	private int nextPosX;
	private int nextPosY;
	
	/**
	 * Création d'une sortie
	 * @param chx_numSortie Numéro de la sortie
	 * @param chx_posX Position X de la sortie dans le jeu
	 * @param chx_posY Position Y de la sortie dans le jeu
	 * @param chx_nextPiece Numéro de la pièce où le personnage arrive lorqu'il empreinte cette sortie
	 * @param chx_nextPosX Position X du personnage dans la prochaine pièce
	 * @param chx_nextPosY Position Y du personnage dans la prochaine pièce
	 */
public Sortie(int chx_numSortie,int chx_posX, int chx_posY,int chx_nextPiece,int chx_nextPosX, int chx_nextPosY) {
		
		numSortie=chx_numSortie;
		posX=chx_posX;
		posY=chx_posY;
		nextPiece=chx_nextPiece;
		nextPosX=chx_nextPosX;
		nextPosY=chx_nextPosY;
		
	}
	
	/**
	 * Modifier la position en X de la sortie
	 * @param chx_posX position en X voulue
	 */
	public void setPosX(int chx_posX) {
		
		posX=chx_posX;
		
	}
	
	/**
	 * Modifier la position en Y de la sortie
	 * @param chx_posY position en Y voulue
	 */
	public void setPosY(int chx_posY) {
	
		posY=chx_posY;

	}
	
	/**
	 * Modifier la prochaine pièce
	 * @param chx_nextPiece prochaine pièce voulue
	 */
	public void setNextPiece(int chx_nextPiece) {
		
		nextPiece=chx_nextPiece;
		
	}
	
	/**
	 * Modifier la position en X dans la prochaine pièce
	 * @param chx_posX position en X dans la prochaine pièce voulue
	 */
	public void setNextPosX(int chx_posX) {
		
		nextPosX=chx_posX;
		
	}
	
	/**
	 * Modifier la position en Y dans la prochaine pièce
	 * @param chx_posY position en Y dans la prochaine pièce voulue
	 */
	public void setNextPosY(int chx_posY) {
		
		nextPosY=chx_posY;
		
	}
	
	/**
	 * Méthode appelée pour obtenir le numéro de la sortie
	 * @return codesecret
	 */
	public int getNum() {
		
		return numSortie;
		
	}
	
	/**
	 * Méthode appelée pour obtenir la position en X de la sortie
	 * @return position en X de la sortie
	 */
	public int getPosX() {
		
		return posX;
		
	}
	
	/**
	 * Méthode appelée pour obtenir la position en Y de la sortie
	 * @return position en Y de la sortie
	 */
	public int getPosY() {
		
		return posY;
		
	}
	
	/**
	 * Méthode appelée pour obtenir la prochaine pièce de la sortie
	 * @return prochaine pièce de la sortie
	 */
	public int getNextPiece() {
		
		return nextPiece;
		
	}
	
	/**
	 * Méthode appelée pour obtenir la position en X dans la prochaine pièce de la sortie
	 * @return position en X dans la prochaine pièce de la sortie
	 */
	public int getNextPosX() {
		
		return nextPosX;
		
	}
	
	/**
	 * Méthode appelée pour obtenir la position en Y dans la prochaine pièce de la sortie
	 * @return position en Y dans la prochaine pièce de la sortie
	 */
	public int getNextPosY() {
		
		return nextPosY;
		
	}
	
	/**
	 * On vérifie si le joueur se trouve sur la sortie
	 * @param chx_posX position en X du joueur
	 * @param chx_posY position en Y du joueur
	 * @return true si le joueur se trouve sur la sortie
	 */
	public boolean verifSortie(int chx_posX,int chx_posY){
		
		if( posX==chx_posX && posY==chx_posY){
			return true;
		}
		else {
			return false;
		}
	}
}
